package com.yidu.qianfeng.service.impl;

import com.yidu.qianfeng.common.bean.client.Consignee;
import com.yidu.qianfeng.common.bean.client.Shipper;
import com.yidu.qianfeng.common.util.JsonMsgUtil;
import com.yidu.qianfeng.mapper.ChientMapper;
import com.yidu.qianfeng.service.ChientServiceInter;
import org.springframework.stereotype.Service;

import javax.annotation.Resource;
import java.util.List;

/**
 * 客户管理模块服务层实现类
 */
@Service("chientServiceImpl")//标准是服务层组件
public class ChientServiceImpl implements ChientServiceInter {

    @Resource(name = "chientMapper")//依赖注入dao层
    private ChientMapper chientMapper;

    /**
     * 分页查询发货方表
     * @param page 页面
     * @param limit 页目
     * @return 发货方表对象
     */
    @Override
    public List<Shipper> selectShipperPaing(int page, int limit) {

        return chientMapper.selectShipperPaing(page,limit);
    }

    /**
     * 查询发货方表个数
     * @return 结果
     */
    @Override
    public int selectShipperCount() {

        return chientMapper.selectShipperCount();
    }

    /**
     * 发货单位模糊查询
     * @param shipperCom 发货单位
     * @return 结果集合
     */
    @Override
    public List<Shipper> likeSelectShipperCom(String shipperCom) {

        return chientMapper.likeSelectShipperCom(shipperCom);
    }

    /**
     * 新增发货方
     * @param shipper 发货方对象
     * @return 结果信息
     */
    @Override
    public String insertShipper(Shipper shipper) {
        int result = chientMapper.insertShipper(shipper);
        return JsonMsgUtil.createJsonMessage(result,"新增成功","新增失败");
    }

    /**
     * 删除发货方数据
     * @param shipperId 主键id
     * @return 结果信息
     */
    @Override
    public String deleteShipper(String shipperId) {
        int result = chientMapper.deleteShipper(shipperId);
        return JsonMsgUtil.createJsonMessage(result,"删除成功","删除失败");
    }

    /**
     * 根据id查询发货方数据
     * @param shipperId 主键id
     * @return 结果对象
     */
    @Override
    public Shipper byIdQueryShipper(String shipperId) {

        return chientMapper.byIdQueryShipper(shipperId);
    }

    /**
     * 修改发货方数据
     * @param shipper 发货方对象
     * @return
     */
    @Override
    public String updateShipper(Shipper shipper) {
        int result = chientMapper.updateShipper(shipper);

        return JsonMsgUtil.createJsonMessage(result,"修改成功","修改失败");
    }

    /**
     * 分页查询收货方数据
     * @param page  页面
     * @param limit 页目
     * @return 集合对象
     */
    @Override
    public List<Consignee> selectConsiPaing(int page, int limit) {

        return chientMapper.selectConsiPaing(page,limit);
    }

    /**
     * 查询发货方个数
     * @return 结果
     */
    @Override
    public int selectConsiCount() {

        return chientMapper.selectConsiCount();
    }

    /**
     * 模糊查询发货单位
     * @param consiCom 发货单位
     * @return 集合对象
     */
    @Override
    public List<Consignee> likeSelectConsiCom(String consiCom) {

        return chientMapper.likeSelectConsiCom(consiCom);
    }

    /**
     * 新增收货方数据
     * @param consignee 发货方对象
     * @return 结果信息
     */
    @Override
    public String insertConsi(Consignee consignee) {
        int result = chientMapper.insertConsi(consignee);

        return JsonMsgUtil.createJsonMessage(result,"新增成功","新增失败");
    }

    /**
     * 删除收货方数据
     * @param consiId 主键id
     * @return 结果信息
     */
    @Override
    public String deleteConsi(String consiId) {
        int result = chientMapper.deleteConsi(consiId);

        return JsonMsgUtil.createJsonMessage(result,"删除成功","删除失败");
    }

    /**
     * 根据id查询收货方
     * @param consiId 主键id
     * @return 结果对象
     */
    @Override
    public Consignee byIdQueryConsi(String consiId) {

        return chientMapper.byIdQueryConsi(consiId);
    }

    /**
     * 修改收货方数据
     * @param consignee 发货方对象
     * @return 结果信息
     */
    @Override
    public String updateConsi(Consignee consignee) {
        int result = chientMapper.updateConsi(consignee);
        return JsonMsgUtil.createJsonMessage(result,"修改成功","修改失败");
    }
}
